package com.ahora.org.ejb.facade.interfaces;

import java.util.ArrayList;
import java.util.List;

import javax.ejb.Local;

import com.ahora.org.ejb.jpa.beans.GenericoBean;
import com.ahora.org.ejb.jpa.beans.PersonaDTO;
import com.ahora.org.ejb.jpa.beans.RequisitoProcesosDTO;
import com.ahora.org.ejb.jpa.entities.DetalleCupexRequisito;
import com.ahora.org.ejb.jpa.entities.Persona;
import com.ahora.org.ejb.jpa.entities.TipoDocumentoIdentidad;
import com.ahora.org.ejb.jpa.entities.Ubigeo;

@Local
public interface PersonaFacade {
	public abstract String insertar(Persona entPersona,String codigoProceso,ArrayList<RequisitoProcesosDTO> lstdetalleProcesoRequisito);
	public abstract Persona buscarPersona(String dni) throws Exception ;
	public abstract void insertarRequisito(DetalleCupexRequisito entity);
	public abstract List<TipoDocumentoIdentidad> listarTiposDocumentos();
	public abstract List<GenericoBean> listDepartamentos();
	public abstract List<Ubigeo> listaUbigeo();
	public abstract Persona buscarDniPasap(Persona objPersonaDTO);
	public abstract String insertarPersona(Persona objPersona);
	public abstract Persona logeoPersona(Persona objPersonaDTO);
	public abstract String modificarPersona(Persona objPersona, String nuevaCLave);
	public abstract String completarRegistro(int codExp,
			List<RequisitoProcesosDTO> lstdetalleProcesoRequisito);
	public abstract String recuperarContrasenia(Persona objPersona);
	public abstract String nombresCompletos()throws Exception;
	public abstract List<PersonaDTO> listarUsuariosExternosBloqueados();
	public abstract String actualizarEstadoPersona(int idPersona, int idEstadoDeclaracionJurada,String observacion);
	public abstract int validarLogeoPersona(Persona objPersonaDTO);
	public abstract int validarEmail(String email,String emailAlterno);
}
